1. Field
A printing system in which a server apparatus connected to a printing device is connected to a client apparatus via a network. A printing control method in which the client apparatus constituting the printing system generates a printing job and requests to print to the server apparatus. A printing control device and a program product for use in the printing system.
2. Related Art
In the related art, it has been known a printing system in which a plurality of personal computers (hereinafter, simply referred to as ‘PCs’) are connected to one another via a network and a printer is connected to a specified PC, and a plurality of PCs connected to the network can use the printer.
FIG. 6 is one example of the printing system in which a server PC 102 connected to a printer 103 is connected to a client PC 101 via a network 105. Although not shown, the network 15 is connected to a plurality of client PCs. Thus, printing data can be outputted and printed from the server PC 102 to the printer 103. All client PCs connected to the network 105 can output and print printing data to the printer 103 via the network 105 and the server PC 102.
In the printing system configured in such a manner, a flow of a printing process when a request to print is made from the client PC 101 to the server PC 102 in order to print with the printer 103 will be schematically described with reference to FIG. 7. In FIG. 7, all the client operating system (OS) for the client PC 101 and the server OS for the server PC 102 are Windows (Registered Trademark) (the same is applied to the following description).
When a print instruction is made from an application 111 by the process of a user who uses the application 111, such as word processor, spread sheet software, or the like, the instruction is transmitted via a printer driver user interface (UI) 112 to a graphics device interface (GDI), which is a program module provided by the client OS. With this GDI, a device context (hereinafter, referred to as ‘DC’) serving as a virtual display area is created and provided to the application 111. Accordingly, a drawing process to the DC is performed by the application 111. As a result, an intermediate file, which is called an enhanced metafile (EMF), is generated for each page, without depending on the kind of a printer.
The intermediate file for each page is formed as one spool file for each printing job by a spooler system 113, which is one function of the client OS, and the spool file is temporarily stored (spooled) in a storage device by the spooler system 113.
Then, a print processor 114 transfers the spool file stored in the storage device to the printer driver GDI 115, such that the spool file is converted into printing data (printer control code) according to the output destination printer 103 by the printer driver GDI 115. Further, printing data is outputted to the server PC 102 via a port monitor 116.
The port monitor 116 requests to connect to the server PC 102 prior to outputting printing data. Then, in the server PC 102, the permission of whether or not the connection is permitted is performed. Therefore, when the permission is passed and the connection is permitted, printing data from the client PC 101 is inputted to the server PC 102 and is outputted to the printer 103 through a spooler system 131 or a printer processor 132. In addition, in the above-described example, in the client PC 101, the spool file is converted into the printer control code according to the output destination printer 103, the conversion into the printer control code is not performed in the printer driver GDI 133 for the server PC 102.
Here, in the above-described processes of the client PC 101, the print instruction from the application 111 by the process of the user or the operation of the printer driver UI 112 is performed with the user permission corresponding to the user. In addition, the processes from spooling of the spool file by the spooler system 113 to the request to connect (permission request) through the print processor 114 and the printer driver 115 by the port monitor 116 are performed with the impersonated user permission, which is originally the system permission.
Accordingly, an permission request from the port monitor 116, that is, an permission process by the server PC 102 is performed under the name of the client PC 101. For this reason, as long as the permission is performed under the name of the user whose access permission to the printer 103 is pre-registered, the connection is permitted through the permission.
Further, in addition to the above-described example of normal printing, for example, various kinds of special printing, such as multi-page printing, which is called “N in 1”, such as, 4 in 1 and 2 in 1, and in which a plurality of divided pages is printed in the same page, overlap printing (so called watermark drawing) in which some image overlap other images, or page-transposition printing (reverse order) in which a plurality of divided pages are transposed and printed are demanded. Further, it has been considered that these special printing jobs are controlled by the personal computer. Here, the inventors have proposed a technology in which the spool file is processed to implement various kinds of special printing (for example, see JP-A-2003-131835).
Specifically, with respect to the spool file spooled by the spooler system 113, the spool file processing program 121, which is a process for the processing of the print processor 114, starts. Accordingly, the spool file is divided into an intermediate file for each page, and a predetermined processing is performed to the intermediate file. Thus, a new spool file is generated from the processed intermediate file and is returned to the spooler system 113. Accordingly, based on the new spool file generated, while a normal processing is possible in which the printer control code is generated by the printer driver GDI 115 according to the output destination printer, various kinds of special printing are implemented.
However, when the spool file is processed to generate the new spool file for special printing and then the connection to the server PC 102 via the print processor 114 or the printer driver GDI 115 is requested from the port monitor 116, the permission may be rejected by the server PC 102 and the special printing may not be performed with the printer 103.